Titre

------------------------------------- Chapitre VIII - Cryptographie -------------------------------------

Cryptographie symétrique : un exemple de Blowfish - 3/4

 

Phase de déchiffrement :

On peut déjà remarquer que la routine d'enregistrement ne tient compte que du serial entré...

Au niveau de cette routine :

Serial16

On obtient au niveau de la pile :

Serial17

Arg1 pointe vers le serial.
Arg2 pointe vers :

Serial18

C'est là où sera stocké le serial.
Par la suite, on peut reconnaître DataL / DataR.

C'est ce que demande le serial, qui doit donc représenter 2 DWORDs et faire 16 caractères...

Voici la routine qui récupère le "1er DWORD" :

Serial19

Dans la pile, on a :

Serial23

En 000F2794, on voit apparaître :

Serial24

Voici l'appel à la fonction Blowfish_decrypt ( ) :

Serial25

Dans la pile, on récupère les paramètres passés à la fonction :

Serial26

En sortie (valeurs retournées), on récupère :

Serial27

On peut donc retrouver le serial déchiffré, à l'aide de Keygener Assistant d'AT4RE :

Serial28

Après déchiffrement du serial, on a deux vérifications :

Serial29

Voici la fonction Blowfish_decrypt ( ) :

Serial30

avec le même appel à la fonction GetByte (X,Y) :

Serial15

Essayons de trouver un serial valide :

Input :

000000010001869E

Serial :

6223E492C4F077C0

Serial31

La 1ère partie du serial est quelconque, la deuxième partie de serial doit être non nulle mais inférieure à 1869Fh.

Serial0

Le serial calculé précédemment est finalement validé par un message :

Registered0

Le code correspondant est :

Serial32

 

L'API MessageBoxA est elle aussi encapsulée :

Serial33

Où est stocké le serial ?

Il est dans un keyfile.

Serial34

Dans la pile, on trouve le chemin d'un fichier au nom anodin :

Serial35

Il s'agit du fichier bitmap, qui apparaît lors de l'analyse du DVD inséré :

ifo.bmp

Le serial est stocké à la fin du fichier en question :

Serial38

Avant enregistrement, on a :

Serial36

Après enregistrement :

Serial37

On peut passer au keygenning :).

 

 

Precedent        Sommaire        Suivant